<%@page import="java.io.File"%>
<%@page import="java.io.IOException"%>
<%@page import="beans.User"%>
<%@page import="java.io.ObjectInputStream"%>
<%@page import="java.io.FileInputStream"%>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>객체 역직렬화를 이용하는 login 로직</title>
</head>
<body>
<%
String beanId = null;
String beanPw = null;

String id = request.getParameter("id");
String pw = request.getParameter("pw");

try {
	String beanPath = "C:/applications/serialized/user_" + id;
	File beanFile = new File(beanPath);
	if (beanFile.exists()) {	// 회원가입정보 파일 존재 여부 체크
		FileInputStream fis = new FileInputStream(beanPath);
		ObjectInputStream ois = new ObjectInputStream(fis);
		
		User user = (User) ois.readObject();
		beanId = user.getId();
		beanPw = user.getPw();
		ois.close();
	}
} catch (IOException e) {
%>
<script type="text/javascript">
	alert('회원 DB 처리 오류 발생');
	history.back();
</script>
<%
}

if (beanId == null || beanPw == null) {
	// 회원정보가 없는 경우
%>
<script type="text/javascript">
	alert('가입된 정보가 없습니다.');
	history.back();
</script>
<%
}
else {
	if (beanId.equals(id) && beanPw.equals(pw)) {
		// 아이디 및 패스워드가 일치하는 경우
		// session 처리 등의 로그인 로직 수행
		session.setAttribute("loginId", id);
%>
	로그인에 성공하였습니다.<br/>
	<a href="login_form.jsp">로그인 페이지로</a>
<%
	} else if (beanId.equals(id)) {
		// 패스워드가 틀린 경우
%>
	<script type="text/javascript">
		alert('패스워드가 틀렸습니다.');
		history.back();
	</script>
<%
	} else {
		// 아이디가 틀린 경우
%>
	<script type="text/javascript">
		alert('아이디가 틀렸습니다.');
		history.back();
	</script>
<%
	}
}
%>


</body>
</html>